﻿using System.Collections.Generic;
using Cms.Domain;

namespace Cms.Application.Admin.Views
{
    public interface IEditMasterTemplateView : IAdminPageView, ITranslatable
    {
        int MasterTemplateID { get; }

        string Name { get; set; }

        string SourceCode { get; set; }

        string MasterTemplateAreas { get; set; }

        string PageAreas { get; set; }

        string CurrentTab { get; }

        int SelectedLocaleID { get; set; }
        
        int SelectedVersionID { get; set; }
        
        void SetMasterTemplateID(int id);

        string GetSourceCodeStatus();

        void SetLocales(IList<Locale> locales);

        void SetVersions(IList<ContentTranslationVersion> versions, int publishedVersionID);

        void SetStylesheets(IList<Stylesheet> selectedStylesheets, IList<Stylesheet> availableStylesheets);

        void PublishContentNotAllowed();

        void SetScheduledPublishings(IList<ScheduledPublishing> scheduledPublishings);
    }
}